package customerEnter.Frame.DaoDataTransmission;

import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;

import org.springframework.jdbc.support.rowset.SqlRowSet;

import customerEnter.Frame.Enum.FrameDataQueryUse;
import customerEnter.Frame.JDBCDao.SqlRowSet.SqlRowSetFrame;
import customerEnter.Frame.ehcache.AvailableEhcache.EcacheDataTransmission;

/**
 * 数据查詢的屬性
 * 
 * 类名称：DaoFramePameTransmission 类描述： 创建人：dy 创建时间：2016-3-28 上午8:59:06
 * 
 */
public class DaoFramePameTransmission<T, K> {

	public String					ClassName				= "";

	public String					SqltatementType			= "PreparedStatement";

	public EcacheDataTransmission	ecacheDataTransmission	= null;

	public String					SQL						= "";

	public SqlRowSet				sqlRowSet;

	public int						CacheTime				= 1;
	public int						Counter					= 0;					// 计数器

	public TimeUnit					timeUnit				= TimeUnit.MINUTES;

	public SqlRowSetFrame			sqlRowSetFrame;

	public FrameDataQueryUse		frameDataQueryUse;
	/**
	 * 數據查詢返回的值
	 */
	@SuppressWarnings("rawtypes")
	public List						DaoFramelistOther		= new ArrayList();

	/**
	 * 定義透明變量
	 */
	public Class<?>					c;
	/**
	 * 定義準確類型
	 */
	public Class<T>					daoFrameT;
	/**
	 * 定義準確類型
	 */
	public Class<K>					daoFrameK;
	/**
	 * 定義準確類型
	 */
	public Class<?>					daoFrame;
	/**
	 * 臨時循環賦值變量
	 */
	@SuppressWarnings("rawtypes")
	public Class					cls;

	public Map<String, String>		columnNameMap;

	public Map<String, Object>		beanAttributes;

	public List<Field>				listFields;

	/**
	 * 是否是分頁數據
	 */
	public Boolean					pagingParametersCount;

	@SuppressWarnings("rawtypes")
	public PagingParametersResult	pagingParametersResult;

	/**
	 * 臨時循環賦值變量
	 */
	public String getSqltatementType() {
		return SqltatementType;
	}

	public void setSqltatementType(String sqltatementType) {
		SqltatementType = sqltatementType;
	}

	public SqlRowSetFrame getSqlRowSetFrame() {
		return sqlRowSetFrame;
	}

	public void setSqlRowSetFrame(SqlRowSetFrame sqlRowSetFrame) {
		this.sqlRowSetFrame = sqlRowSetFrame;
	}

	public Map<String, String> getColumnNameMap() {
		return columnNameMap;
	}

	public void setColumnNameMap(Map<String, String> columnNameMap) {
		this.columnNameMap = columnNameMap;
	}

	public Map<String, Object> getBeanAttributes() {
		return beanAttributes;
	}

	public void setBeanAttributes(Map<String, Object> beanAttributes) {
		this.beanAttributes = beanAttributes;
	}

	@SuppressWarnings("rawtypes")
	public PagingParametersResult getPagingParametersResult() {
		return pagingParametersResult;
	}

	@SuppressWarnings("rawtypes")
	public void setPagingParametersResult(PagingParametersResult pagingParametersResult) {
		this.pagingParametersResult = pagingParametersResult;
	}

	public FrameDataQueryUse getFrameDataQueryUse() {
		return frameDataQueryUse;
	}

	public void setFrameDataQueryUse(FrameDataQueryUse frameDataQueryUse) {
		this.frameDataQueryUse = frameDataQueryUse;
	}

}
